Function Reference

_ArraySearch

Finds an entry within an one-dimensional array. (Similar to _ArrayBinarySearch() except the array does not need to be sorted.)

#include <Array.au3>
_ArraySearch ( $avArray, $vWhat2Find, $iStart = 0, $iEnd = 0, $iCaseSense = 0, $fPartialSearch = False )

 

Parameters

$avArray The array to search
$vWhat2Find What to search $avArray for
$iStart (Optional) Start array index for search, normally set to 0 or 1. If omitted it is set to 0
$iEnd (Optional) End array index for search. If omitted or set to 0 it is set to Ubound($AvArray)
$iCaseSense (Optional) If set to 1 then search is case sensitive
$fPartialSearch (Optional) If set to True then executes a partial search. If omitted it is set to False

 

Return Value

Success: The first found instance of $vWhat2Find in $avArray
Failure: Returns -1 and sets @Error on Errors.
@Error: 1 $avArray is not an array
2 $iStart is greater than UBound($AvArray)-1
3 $iEnd is greater than UBound($AvArray)-1
4 $iStart is greater than $iEnd
5 $iCaseSense was invalid. (Must be 0 or 1)
6 $vWhat2Find was not found in $avArray

 

Remarks

This function might be slower than _ArrayBinarySearch() but is useful when the array's order can't be altered.

 

Related

_ArrayBinarySearch

 

Example


#Include<Array.au3>
Dim $Array[6]
$Array[0] = "String0|SubString0"
$Array[1] = "String1|SubString1"
$Array[2] = "String2|SubString2"
$Array[3] = "String3|SubString3"
$Array[4] = "String4|SubString4"
$Array[5] = "String5|SubString5"

$Input = InputBox("ArraySearch Demo", "String To Find?")
If @error Then Exit

$Pos = _ArraySearch ($Array, $Input, 0, 0, 0, True)
Select
    Case $Pos = -1
        MsgBox(0, "Not Found", '"' & $Input & '" was not found in the array.')
    Case Else
        MsgBox(0, "Found", '"' & $Input & '" was found in the array at pos ' & $Pos & ".")
EndSelect